package com.seeyon.apps.ext.cop.button.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * @author lan.jianyuan
 * @create 2021-07-19-11:37
 */
public class BaseDaoSqlOA {
    private String driver = "com.mysql.cj.jdbc.Driver";// 数据库驱动字符串
    
    //正式数据源
    private static String url = "jdbc:mysql://10.211.55.2:3306/cop?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8";// 连接URL字符串
    private static String user = "root";// 数据库用户名
    private static String password = "Mysql123456";// 用户密码
    Connection conn = null;// 数据连接对象

    
    /**
     * 获取数据库连接对象。
     */
    public Connection getConnection() {
        Connection conn = null;
        if (conn == null) {
            // 获取连接并捕获异常
            try {
                Class.forName(driver);
                conn = DriverManager.getConnection(url, user, password);
                
            } catch (Exception e) {
                e.printStackTrace();// 异常处理
            }
        }
        return conn;// 返回连接对象
    }
    
    /**
     * 关闭数据库连接。
     *
     * @param conn
     *            数据库连接
     * @param stmt
     *            Statement对象
     * @param rs
     *            结果集
     */
    public void closeAll(Connection conn, Statement stmt, ResultSet rs) {
        // 若结果集对象不为空，则关闭
        if (rs != null) {
            try {
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        // 若Statement对象不为空，则关闭
        if (stmt != null) {
            try {
                stmt.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        // 若数据库连接对象不为空，则关闭
        if (conn != null) {
            try {
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}
